package zzs.generalframework.console.core.authorization.authuserrolemap.service;

import java.util.List;

import zzs.generalframework.common.core.authorization.authuserrolemap.AuthUserRoleMapBO;
import zzs.generalframework.common.core.authorization.authuserrolemap.AuthUserRoleMapInfo;
import zzs.generalframework.console.common.exception.ConsoleException;
import zzs.generalframework.console.common.model.ConsoleReturnBO;

/**
 * @title
 * @description
 * @project zzs-console
 * @package zzs.generalframework.console.core.authorization.authuserrolemap.service
 * @author zzs
 * @date 2018年2月2日
 * @version 1.0
 */
public interface IAuthUserRoleMapService
{

	/**
	 * 保存权限用户角色映射信息
	 *
	 * @param authUserRoleMap
	 * @return
	 */
	public ConsoleReturnBO saveAuthUserRoleMap(AuthUserRoleMapBO authUserRoleMapBO);

	/**
	 * 保存权限用户角色映射信息列表
	 *
	 * @param authUserRoleMapBOList
	 * @return
	 * @throws ConsoleException
	 */
	public ConsoleReturnBO saveAuthUserRoleMap(List<AuthUserRoleMapBO> authUserRoleMapBOList) throws ConsoleException;

	/**
	 * 获取权限用户角色映射信息
	 *
	 * @param authUserRoleMapInfo
	 * @return
	 */
	public ConsoleReturnBO getAuthUserRoleMap(AuthUserRoleMapInfo authUserRoleMapInfo);

	/**
	 * 获取权限用户角色映射信息列表
	 *
	 * @param authUserRoleMapInfo
	 * @return
	 */
	public ConsoleReturnBO listAuthUserRoleMap(AuthUserRoleMapInfo authUserRoleMapInfo);

	/**
	 * 更新权限用户角色映射信息
	 *
	 * @param authUserRoleMapBO
	 * @return
	 */
	public ConsoleReturnBO updateAuthUserRoleMap(AuthUserRoleMapBO authUserRoleMapBO);

	/**
	 * 更新权限用户角色映射信息列表
	 *
	 * @param authUserRoleMapBOList
	 * @return
	 * @throws ConsoleException
	 */
	public ConsoleReturnBO updateAuthUserRoleMap(List<AuthUserRoleMapBO> authUserRoleMapBOList) throws ConsoleException;

	/**
	 * 删除权限用户角色映射信息
	 *
	 * @param authUserRoleMapBO
	 * @return
	 */
	public ConsoleReturnBO removeAuthUserRoleMap(AuthUserRoleMapBO authUserRoleMapBO);

	/**
	 * 删除权限用户角色映射信息列表
	 *
	 * @param authUserRoleMapBOList
	 * @return
	 * @throws ConsoleException
	 */
	public ConsoleReturnBO removeAuthUserRoleMap(List<AuthUserRoleMapBO> authUserRoleMapBOList) throws ConsoleException;

	/**
	 * 统计权限用户角色映射信息
	 *
	 * @param authUserRoleMapBO
	 * @return
	 */
	public Long countAuthUserRoleMap(AuthUserRoleMapBO authUserRoleMapBO);

}
